﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections.ObjectModel;

namespace TraceInspector.ViewModel
{
    public interface IToolManager
    {
        ObservableCollection<ToolViewModel> Tools { get; set; }
        void OpenTool<T>(Func<T, bool> predicate,Func<T> toolFactory) where T : ToolViewModel;
        void CloseTool(ToolViewModel tool);
        void SetCurrentTool(ToolViewModel currentTool);
        void ClearTools();
    }
}
